// pages/Home/Home.js
import request from "../../Util/request"
import POST_Trim from "../../Util/POST_Trim"
import FormCheck from "../../Util/FormCheck"
import ConvertDateTime from "../../Util/ConvertDateTime"

Page({

    /**
     * 页面的初始数据
     */
    data: {
        //弹出层show
        show:false,
        //显示开始日期（时间）选择器
        showStart:true,
        //显示结束日期（时间）选择器
        showEnd:true,
        //显示弹出的对话框
        showDialog:false,
        //保存弹出层座位ID输入框的值
        input_seatID:0,
        //搜索框输入的值
        searchText:"",
        activeKey: 0,
        activeName:'1',
        /**存储GetAllFloor的楼层信息 */
        Floors:[{
            theIndex: 0, 
            id: 0, 
            alias: "不羁阁",
        }],
        //存储Floor对应的Table信息
        Tables:[{

        }],
        //DateTimePacker组件的必要属性
        minHour: 10,
        maxHour: 20,
        minDate: new Date().getTime(),
        maxDate: new Date(2023, 10, 1).getTime(),
        currentDate: new Date().getTime(),
        //选择的开始时间
        start_long:0,
        start_time:ConvertDateTime(new Date()),
        end_long:0,
        end_time:ConvertDateTime(new Date())
    },/** */

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        console.log(wx.getStorageSync('token')),
        console.log(wx.getStorageSync('username'))
        request({
            //先查询所有的楼层信息
            url:"/Floor/GetAllFloor",
            method:"GET",
            header:{
                //这个接口需要检查JWT，取出登录时传入的验证信息
                'username':wx.getStorageSync('username'),
                'Authorize':wx.getStorageSync('token')
            }
        }).then((res=>{
            console.log(res)
            //设置数据
            this.setData({
                Floors:res.data,  
            })
            //然后再查第一个楼层的所有信息，显示所属的桌子
            request({
            url:"/Floor/GetFloorById",
            method:"GET",
            header:{
                'username':wx.getStorageSync('username'),
                'Authorize':wx.getStorageSync('token')
            },
            data:{
                ID:res.data[0].id
            }
            }).then(res=>{
                console.log(res)
                if(res.data.code==200){
                    this.setData({
                        Tables:res.data.data.tables
                    })
                }else{
                    wx.showToast({
                    title: '暂无信息',
                    icon:"error"
                    })
                }
            })
        }))
        
        
    },
    //导航条切换事件
    onChange(event) {
        console.log(event.target.dataset)
        // this.setData({
        //     activeID:event.dataset
        // })
      },
    // cellapse切换事件 
    onChange2(event) {
        this.setData({
          activeName: event.detail,
        });
      }, 
    // cellapse点击事件 
    onChange3(event) {
        console.log(event.target.dataset)
        request({
            url:"/Floor/GetFloorById",
            method:"GET",
            header:{
                'username':wx.getStorageSync('username'),
                'Authorize':wx.getStorageSync('token')
            },
            data:{
                ID:event.target.dataset.myid
            }
        }).then(res=>{
            console.log(res)
            if(res.data.code==200){
                this.setData({
                    Tables:res.data.data.tables
                })
            }else{
                wx.showToast({
                  title: '暂无信息',
                  icon:"error"
                })
            }
        })
      }, 
   /**弹出层弹出函数 */   
    ToOrderPop(){
        this.setData({
            show:true
        })
    },
    /**弹出层关闭 */
    onClose(){
        this.setData({
            show:false
        })
    },

    // onInput(event) {
    //     this.setData({
    //       currentDate: event.detail,
    //     });
    //   },
    //确定开始时间
    ConF_Start(event){
        console.log(event.detail)
        this.setData({
            start_long:event.detail,
            start_time:ConvertDateTime(new Date(event.detail)),
            showStart:false
        })
    },
    //确定结束时间
    ConF_End(event){
        console.log(event.detail)
        this.setData({
            end_time:event.detail,
            end_time:ConvertDateTime(new Date(event.detail)),
            showEnd:false
        })
    },

    //弹出层ID输入框的输入事件,修改绑定的value
    InputSeatFunc(event){
        this.setData({
            input_seatID:event.detail
        })
    },

    //弹出层提交按钮绑定的提交预定事件，-----掉CreateOrder接口
    CreateOrderFunc(event){
        console.log(ConvertDateTime(new Date(this.data.start_time)))
        console.log(ConvertDateTime(new Date(this.data.end_time)))
        console.log(this.data.input_seatID)
        if(this.data.start_time>this.data.end_time){ //这是时间错误的情况Start晚于End
            this.setData({
                showDialog:true
            })
            return;
        }

        request({
            url:"/Order/CreateOrder",
            method:"GET",
            header:{
                //请求头带上验证信息
                'username':wx.getStorageSync('username'),
                'Authorize':wx.getStorageSync('token')
            },
            data:{
                UserName:wx.getStorageSync('username'),
				SeatID:this.data.input_seatID,
				Start:this.data.start_long,
				End:this.data.end_long
            }
        }).then((res=>{
            console.log(res)
            if(res.data.code==200){
                wx.showToast({
                  title: '预定成功',
                  icon:"success"
                })
            }
            else{
                wx.showToast({
                    title: '失败',
                    icon:"error"
                })
            }

        }))

    },


    DialogClose(event){
        this.setData({
            showDialog:false
        })
    },
    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})